<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of Usuario_model
 *
 * @author Marlon
 */
class Usuario_model extends CI_Model{
    //put your code here
    function __construct()
    {
        parent::__construct();
        $this->load->library('encrypt');
        
    }    
    function insertarPersona($dato){        
        $this->db->insert('persona',$dato);
        $idPer=$this->db->insert_id();          
        return $idPer;
    }
    function insertarUsuario($dato){
        $this->db->insert('usuario',$dato);
    }
     function buscarUsuario($usuario){
    
        $sql = $this->db->query("
            select
            *
            from usuario
            where Email like '%$usuario%'");
       
        $row = $sql->result_array();
        return $row;
       
    }
    

    function verify_details($username, $password)
    {
        $usuario = $this->buscarUsuario($username);
        
        
        if ($usuario!=NULL) {
            $resultado=strtotime(date('Y-m-d H:i:s'))-strtotime($usuario[0]['FechaIntento']);
            $horas=$resultado = $resultado / 60 / 60;
           
            if($horas>24){
                $dato=array('IntentosInicio'=>0,'FechaIntento'=>date('Y-m-d H:i:s'));
                $this->actualizar($usuario[0]['IdUsuario'],$dato);
            }
//            if($usuario[0]['IdUsuario']!=1){
            $passComparar=$this->encrypt->decode($usuario[0]["Password"]);
            $pass =$passComparar ;
            $inten=$usuario[0]['IntentosInicio'];
            if ($inten > MAX_INTENTOS){
                return 2;
            }
            else if ($pass==$password) {
                $dato=array('IntentosInicio'=>0,'FechaIntento'=>date('Y-m-d H:i:s'));
                $this->actualizar($usuario[0]['IdUsuario'],$dato);
                return 0;
                }
             else {
                 $intento=  intval($inten)+1;
                 $dato=array('IntentosInicio'=>$intento,'FechaIntento'=>date('Y-m-d h:i:s'));
                 $this->actualizar($usuario[0]['IdUsuario'],$dato);
                 return 1;
             }   

        }
        return 3;
        
    }
    function get_by_username($user){        
        $cad="select per.RazonSocial as username,per.IdPersona as id,usa.TipoUsuario as role_id,usa.Estado as est from persona per,usuario usa 
            where usa.IdUsuario=per.idPersona and usa.Email like '%$user%'";
        return $this->db->query($cad)->result_array();
    }
    function verificarEmail($email,$user){
        $cad="select Email from usuario where IdUsuario<>$user and Email like '%$email%'";
        return $this->db->query($cad)->result_array();
    }
    function verificarEmail2($email){
        $cad="select Email from usuario where Email like '%$email%'";
        return $this->db->query($cad)->result_array();
    }
    function actualizar($idUser,$dato){
        $this->db->where('IdUsuario', $idUser);
        $this->db->update('usuario', $dato); 
    }
    function obtenetInten($idUser){
        $cad="select IntentosInicio int, FechaIntento as fech from usuario where IdUsuario= $idUser";
       return $this->db->query($cad)->result_array();
    }
}

?>
